@charset 'UTF-8';
@import url('http://fonts.googleapis.com/css?family=Open+Sans:400,400italic,700,800');
@import url('font-awesome.min.css');

/*
	ZeroFour by Pixelarity
	pixelarity.com @pixelarity
	License: pixelarity.com/license
*/

/*********************************************************************************/
/* Basic                                                                         */
/*********************************************************************************/

	body
	{
		background: #303238 url('images/bg01.png');
	}

		body.is-loading *
		{
			-moz-transition: none !important;
			-webkit-transition: none !important;
			-o-transition: none !important;
			-ms-transition: none !important;
			transition: none !important;
			-moz-animation: none !important;
			-webkit-animation: none !important;
			-o-animation: none !important;
			-ms-animation: none !important;
			animation: none !important;
		}
	
	body,input,select,textarea
	{
		font-family: 'Open Sans', sans-serif;
		color: #7b818c;
		font-weight: 400;
	}

	a
	{
		color: inherit;
		text-decoration: underline;
	}
	
		a:hover
		{
			text-decoration: none;
		}
	
	h1, h2, h3, h4, h5, h6
	{
		text-transform: uppercase;
		font-weight: 800;
		letter-spacing: 0.04em;
		color: #404248;
		margin: 0 0 1em 0;
	}
	
	h1 a, h2 a, h3 a, h4 a, h5 a, h6 a
	{
		color: inherit;
		text-decoration: none;
		outline: 0;
	}

	h2
	{
		font-size: 2em;
		margin: 0 0 1.5em 0;
		line-height: 1em;
	}
	
		h2.icon
		{
			line-height: 48px;
		}

			h2.icon:before
			{
				position: relative;
				top: 0.05em;
				margin-right: 0.5em;
				opacity: 0.25;
			}

	h3
	{
		font-size: 1.35em;
		margin-top: 2em;
	}

	b, strong
	{
		color: #404248;
		font-weight: 700;
	}

	i, em
	{
		font-style: italic;
	}
	
	br.clear
	{
		clear: both;
	}

	sub
	{
		position: relative;
		top: 0.5em;
		font-size: 0.8em;
	}
	
	sup
	{
		position: relative;
		top: -0.5em;
		font-size: 0.8em;
	}
	
	hr
	{
		border: 0;
		border-top: solid 1px #ddd;
	}
	
	blockquote
	{
		border-left: solid 0.5em #ddd;
		padding: 1em 0 1em 2em;
		font-style: italic;
	}
		
	p, ul, ol, dl, table
	{
		margin-bottom: 2em;
	}

	.date
	{
		display: block;
		text-transform: uppercase;
		font-weight: 700;
		letter-spacing: 0.065em;
		font-size: 0.9em;
		color: #696969;
		margin: 0 0 0.25em 0;
	}
	
	/* Section/Article */
	
		section,
		article
		{
			margin-bottom: 5em;
		}
		
		section > :last-child,
		article > :last-child
		{
			margin-bottom: 0;
		}

		section:last-child,
		article:last-child
		{
			margin-bottom: 0;
		}

		header
		{
			margin: 0 0 2em 0;
		}
		
			header h2, header h3
			{
				margin: 0 0 0.25em 0;
			}
			
			header p
			{
				display: block;
				text-transform: uppercase;
				font-weight: 700;
				letter-spacing: 0.065em;
				font-size: 0.9em;
				color: #696969;
				margin: 0;
			}

				header p strong
				{
					color: #404248;
					font-weight: 800;
				}

		footer
		{
			margin: 2.5em 0 0 0;
		}
		
		header.major
		{
			border-bottom: solid 1px #dbdbdb;
			margin: 0 0 3em 0;
		}
		
			header.major:after
			{
				content: '';
				display: block;
				border-top: solid 1px #dbdbdb;
				height: 8px;
			}

			header.major h2, 
			header.major h3
			{
				margin: 0 0 1.2em 0;
			}

			header.major p
			{
				margin: 0 0 1.5em 0;
				position: relative;
				top: -1em;
			}
	
	/* Forms */

		form
		{
		}
		
			form label
			{
				display: block;
				text-transform: uppercase;
				font-weight: 800;
				letter-spacing: 0.04em;
				color: #404248;
				margin: 0 0 1em 0;
				font-size: 0.8em;
			}
		
			form input[type="text"],
			form input[type="email"],
			form input[type="password"],
			form select,
			form textarea
			{
				-webkit-appearance: none;
				display: block;
				width: 100%;
				border-radius: 8px;
				border: solid 1px #eee;
			}

				form input[type="text"]:focus,
				form input[type="email"]:focus,
				form input[type="password"]:focus,
				form select:focus,
				form textarea:focus
				{
					box-shadow: 0 0 2px 1px #4091bf;
				}

			form input[type="text"],
			form input[type="email"],
			form input[type="password"],
			form select
			{
				line-height: 3em;
				padding: 0 1em;
			}
				
			form textarea
			{
				min-height: 9em;
				padding: 1em;
			}

			form .formerize-placeholder
			{
				color: #555 !important;
			}

			form ::-webkit-input-placeholder
			{
				color: #555 !important;
			}

			form :-moz-placeholder
			{
				color: #555 !important;
			}

			form ::-moz-placeholder
			{
				color: #555 !important;
			}

			form :-ms-input-placeholder
			{
				color: #555 !important;
			}

			form ::-moz-focus-inner
			{
				border: 0;
			}
			
	/* Tables */
	
		table
		{
			width: 100%;
		}
		
			table.default
			{
				width: 100%;
			}

				table.default tr
				{
					border-top: solid 1px #eee;
				}

					table.default tr:first-child
					{
						border-top: 0;
					}
			
				table.default td
				{
					padding: 0.5em 1em 0.5em 1em;
				}
				
				table.default th
				{
					text-align: left;
					padding: 0.5em 1em 0.5em 1em;
					text-transform: uppercase;
					font-weight: 800;
					letter-spacing: 0.04em;
					margin: 0 0 1em 0;
					font-size: 0.8em;
				}
			
				table.default thead
				{
					background: #404248;
					color: #fff;
				}
				
				table.default tfoot
				{
				}
				
				table.default tbody
				{
				}

	/* Image */

		.image
		{
			position: relative;
			display: inline-block;
		}
		
			.image img
			{
				display: block;
				width: 100%;
				border-radius: 8px;
			}
			
			/* 
				Adds a grain-y overlay to your images. Delete this entire rule if
				that's not something you want.
			*/
			.image:before
			{
				content: '';
				display: block;
				position: absolute;
				left: 0;
				top: 0;
				background: url('images/bg01.png');
				width: 100%;
				height: 100%;
				opacity: 0.75;
			}

			.image.fit
			{
				display: block;
				width: 100%;
			}
			
			.image.featured
			{
				display: block;
				width: 100%;
				margin: 0 0 2.5em 0;
			}
			
			.image.left
			{
				float: left;
				margin: 0 2em 2em 0;
			}
			
			.image.centered
			{
				display: block;
				margin: 0 0 2.5em 0;
			}

				.image.centered img
				{
					margin: 0 auto;
					width: auto;
				}

	/* Button */

		input[type="button"],
		input[type="submit"],
		input[type="reset"],
		.button
		{
			-webkit-appearance: none;
			position: relative;
			display: inline-block;
			background-color: #4091bf;
			background-image: -moz-linear-gradient(top, rgba(0,0,0,0), rgba(0,0,0,0.2)), url('images/bg02.png');
			background-image: -webkit-linear-gradient(top, rgba(0,0,0,0), rgba(0,0,0,0.2)), url('images/bg02.png');
			background-image: -o-linear-gradient(top, rgba(0,0,0,0), rgba(0,0,0,0.2)), url('images/bg02.png');
			background-image: -ms-linear-gradient(top, rgba(0,0,0,0), rgba(0,0,0,0.2)), url('images/bg02.png');
			background-image: linear-gradient(top, rgba(0,0,0,0), rgba(0,0,0,0.2)), url('images/bg02.png');
			border-radius: 8px;
			box-shadow: inset 0px 0px 0px 1px rgba(0,0,0,0.35), inset 0px 2px 1px 0px rgba(255,255,255,0.35);
			text-shadow: -1px -1px 0 rgba(0,0,0,0.5);
			color: #fff !important;
			text-decoration: none;
			text-transform: uppercase;
			font-weight: 800;
			font-size: 0.95em;
			letter-spacing: 0.075em;
			padding: 1em 2em;
			outline: 0;
			border: 0;
			white-space: nowrap;
			cursor: pointer;
			
			-moz-transition: background-color 0.2s ease-in-out;
			-webkit-transition: background-color 0.2s ease-in-out;
			-o-transition: background-color 0.2s ease-in-out;
			-ms-transition: background-color 0.2s ease-in-out;
			transition: background-color 0.2s ease-in-out;
		}
		
			input[type="button"]:hover,
			input[type="submit"]:hover,
			input[type="reset"]:hover,
			.button:hover
			{
				background-color: #50a1cf;
			}
		
			input[type="button"]:active,
			input[type="submit"]:active,
			input[type="reset"]:active,
			.button:active
			{
				background-color: #3081af;
			}
			
			.button.icon
			{
			}
			
				.button.icon:before
				{
					opacity: 0.5;
					margin-right: 0.5em;
					position: relative;
					top: 0.05em;
				}
			
			input[type="button"].medium,
			input[type="submit"].medium,
			input[type="reset"].medium,
			.button.medium
			{
				font-size: 1.25em;
				padding: 1em 2.25em;
			}

			input[type="button"].big,
			input[type="submit"].big,
			input[type="reset"].big,
			.button.big
			{
				font-size: 1.5em;
				padding: 1em 2.25em;
			}

			input[type="button"].alt,
			input[type="submit"].alt,
			input[type="reset"].alt,
			.button.alt
			{
				background-color: #464a52;
			}

				input[type="button"].alt:hover,
				input[type="submit"].alt:hover,
				input[type="reset"].alt:hover,
				.button.alt:hover
				{
					background-color: #565a62;
				}

				input[type="button"].alt:active,
				input[type="submit"].alt:active,
				input[type="reset"].alt:active,
				.button.alt:active
				{
					background-color: #363a42;
				}

	/* List */

		dl.contact
		{
		}
		
			dl.contact dt
			{
				display: block;
				text-transform: uppercase;
				font-weight: 700;
				letter-spacing: 0.065em;
				font-size: 0.9em;
				color: #696969;
				float: left;
				width: 6em;
			}
			
			dl.contact dd
			{
				margin: 0 0 1em 6em;
			}

		ul
		{
		}

			ul.default
			{
				list-style: disc;
				padding-left: 1em;
			}
			
				ul.default li
				{
					padding-left: 0.5em;
				}		

			ul.actions
			{
			}

				ul.actions li
				{
					display: inline-block;
					padding: 0 0 0 0.25em;
					margin: 0 0 0 0.25em;
				}
				
					ul.actions li:first-child
					{
						margin-left: 0;
						padding-left: 0;
					}
			
			ul.menu
			{
			}

				ul.menu li
				{
					border-left: solid 1px #eee;
					display: inline-block;
					padding: 0 0 0 1em;
					margin: 0 0 0 1em;
				}
				
					ul.menu li:first-child
					{
						border-left: 0;
						margin-left: 0;
						padding-left: 0;
					}
			
			ul.divided
			{
			}
			
				ul.divided li
				{
					border-top: solid 1px #eee;
					padding: 0.5em 0 0 0;
					margin: 0.5em 0 0 0;
				}
				
					ul.divided li:first-child
					{
						border-top: 0 !important;
						padding-top: 0 !important;
						margin-top: 0 !important;
					}

		ol
		{
		}	

			ol.default
			{
				list-style: decimal;
				padding-left: 1.25em;
			}

				ol.default li
				{
					padding-left: 0.25em;
				}

	/* Box */

		.box
		{
		}
		
			.box.excerpt
			{
				position: relative;
				overflow: hidden;
			}

				.box.excerpt header
				{
					margin: 0 0 1em 0;
				}

				.box.excerpt .image
				{
					margin-bottom: 0;
				}

				.box.excerpt p
				{
					margin-bottom: 0;
				}

			.box.feature1
			{
				text-align: center;
			}
			
				.box.feature1 header.first
				{
				}
			
					.box.feature1 header.first h2
					{
						font-size: 2.5em;
					}
					
					.box.feature1 header.first p
					{
						font-size: 1.2em;
					}
					
				.box.feature1 header.second
				{
					position: relative;
					display: inline-block;
					text-align: left;
					margin: 0 auto;
					white-space: nowrap;
					left: 24px;
				}

					.box.feature1 header.second p
					{
						line-height: 1em;
					}
				
					.box.feature1 header.second:before
					{
						font-size: 48px;
						position: absolute;
						right: 100%;
						margin-right: 18px;
						opacity: 0.5;
						bottom: -4px;
					}
					
			.box.feature2
			{
				text-align: center;
			}
			
			.box.article-list
			{
			}
			
				.box.article-list article
				{
					border-bottom: solid 1px #dbdbdb;
					margin: 0 0 2.75em 0;
					padding: 0 0 2.75em 0;
				}

				.box.article-list article:last-child
				{
					border-bottom: 0;
					margin-bottom: 0;
					padding-bottom: 0;
				}

/*********************************************************************************/
/* Icons                                                                         */
/*********************************************************************************/

	.icon {
		text-decoration: none;
	}

		.icon:before {
			display: inline-block;
			font-family: FontAwesome;
			font-size: 1.25em;
			text-decoration: none;
			font-style: normal;
			font-weight: normal;
			line-height: 1;
			-webkit-font-smoothing:antialiased;
			-moz-osx-font-smoothing:grayscale;
		}
		
		.icon > .label {
			display: none;
		}

/*********************************************************************************/
/* Banner                                                                        */
/*********************************************************************************/

	#banner
	{
		text-align: center;
	}
	
		#banner h2
		{
			border: solid 1px rgba(255,255,255,0.25);
			border-left: 0;
			border-right: 0;
			color: #fff;
			color: rgba(255,255,255,0.75);
			font-size: 2.35em;
			font-weight: 700;
			line-height: 1.3em;
			margin: 0 0 1.5em 0;
		}
		
			#banner h2 strong
			{
				font-weight: 800;
				color: inherit;
			}
		
			#banner h2:before
			{
				content: '';
				display: block;
				border-top: solid 1px;
				border-color: #888;
				border-color: rgba(255,255,255,0.25);
				margin: 10px 0 1.25em 0;
			}

			#banner h2:after
			{
				content: '';
				display: block;
				border-bottom: solid 1px;
				border-color: #888;
				border-color: rgba(255,255,255,0.25);
				margin: 1.25em 0 10px 0;
			}

		#banner p
		{
			text-transform: uppercase;
			color: #fff;
			color: rgba(255,255,255,0.75);
			font-size: 1.5em;
			font-weight: 700;
			line-height: 1.3em;
			letter-spacing: 0.04em;
		}

/*********************************************************************************/
/* Wrappers                                                                      */
/*********************************************************************************/

	#header-wrapper
	{
		background: url('images/bg01.png'), url('../images/header.jpg');
		background-position: top left, center center;
		background-size: auto, cover;
	}
	
	#banner-wrapper
	{
	}
	
	#main-wrapper
	{
		background: #fff;
	}

	#footer-wrapper
	{
		position: relative;
		background-image:		-moz-linear-gradient(top, rgba(0,0,0,0), rgba(0,0,0,0.5)),		url('images/bg03.png'),		url('images/bg02.png');
		background-image:		-webkit-linear-gradient(top, rgba(0,0,0,0), rgba(0,0,0,0.5)),	url('images/bg03.png'),		url('images/bg02.png');
		background-image:		-o-linear-gradient(top, rgba(0,0,0,0), rgba(0,0,0,0.5)),		url('images/bg03.png'),		url('images/bg02.png');
		background-image:		-ms-linear-gradient(top, rgba(0,0,0,0), rgba(0,0,0,0.5)),		url('images/bg03.png'),		url('images/bg02.png');
		background-image:		linear-gradient(top, rgba(0,0,0,0), rgba(0,0,0,0.5)),			url('images/bg03.png'),		url('images/bg02.png');
		background-repeat:		repeat-x,														no-repeat,					repeat;
		background-size:		100% 100%,														100% 15em,					auto auto;
		background-position:	top left,														top center,					top left;
	}

	.wrapper
	{
	}

		.wrapper > .inner
		{
			position: relative;
			z-index: 2;
		}

		.wrapper.style1
		{
			position: relative;
			text-shadow: 1px 1px 0 #fff;
			background-color:		#fff;
			background-image:		url('images/bg03.png'),		url('images/bg04.png'),		url('images/bg02.png');
			background-repeat:		no-repeat,					no-repeat,					repeat;
			background-size:		100% 15em,					100% 15em,					auto auto;
			background-position:	top center,					bottom center,				top left;
		}
	
		.wrapper.style2
		{
		}
	
		.wrapper.style3
		{
			position: relative;
			text-shadow: 1px 1px 0 #fff;
			background-color:		#fff;
			background-image:		url('images/bg03.png'),		url('images/bg02.png');
			background-repeat:		no-repeat,					repeat;
			background-size:		100% 15em,					auto auto;
			background-position:	top center,					top left;
		}
	
/*********************************************************************************/
/* Header                                                                        */
/*********************************************************************************/

	#header
	{
		margin-bottom: 0;
	}

	
/*********************************************************************************/
/* Footer                                                                        */
/*********************************************************************************/

	#footer
	{
		margin-bottom: 0;
		text-shadow: -1px -1px 0 rgba(0,0,0,0.5);
		position: relative;
		z-index: 2;
	}
	
		#footer h2
		{
			font-size: 1.35em;
			color: #fff;
		}

		#footer strong
		{
			color: #fff;
		}

		#footer a
		{
			color: #acb2bf;
		}

		#footer .button.alt
		{
			box-shadow: inset 0px 0px 0px 1px rgba(0,0,0,0.75), inset 0px 2px 1px 0px rgba(255,255,255,0.25);
		}

		#footer ul.divided li,
		#footer ul.menu li
		{
			border-color: #444;
			border-color: rgba(255,255,255,0.075);
		}

			#footer ul.divided li a
			{
				text-decoration: none;
			}

		#footer ul.menu
		{
			margin: 0;
		}
		
		#footer dl.contact dt
		{
			color: #ddd;
		}

	#copyright
	{
		border-top: solid 1px;
		border-color: #444;
		border-color: rgba(255,255,255,0.075);
		text-align: center;
		margin-top: 2em;
		padding: 3em 0 4em 0;
		color: inherit;
	}
	
		#copyright a
		{
			color: inherit;
		}